﻿/*! @file
********************************************************************************
<PRE>
文 件 名    : BaseSrcFile.cs
说    明    : 转换 源代码文件 基类
作    者    : 汪泽然
--------------------------------------------------------------------------------
备    注    : 
--------------------------------------------------------------------------------
修改记录: 
 * 日    期    版  本    修改人    修改内容 
 * 2009-7-9    0.5.0     汪泽然    完成基本转换功能
</PRE>
********************************************************************************
* 版权所有(c) 2008 ~ 2009, 汪泽然, 保留所有权利
*******************************************************************************/
using System;
using Wangzeran.Transform.Core.ITransform;

namespace Wangzeran.Transform.Core.Support
{
    /// <summary>
    /// 转换 源代码文件 的基类
    /// </summary>
    public abstract class BaseSrcFile : ITransformFile
    {

        #region IBaseFile 成员

        /// <summary>
        /// 获取当前文件的版本信息
        /// </summary>
        /// <param name="filePath">文件完整路径</param>
        /// <returns></returns>
        public virtual string GetVersion(string filePath)
        {
            // 因为源代码没有版本，所以返回空，不进行处理
            return String.Empty;
        }

        /// <summary>
        /// 检查当前文件是否 不是当前版本的文件
        /// 非当前版本则可以进行转换
        /// </summary>
        /// <param name="filePath">文件完整路径</param>
        /// <returns>True: 非当前版本 False:当前版本</returns>
        public virtual bool IsDiffVersion(string filePath)
        {
            // 同理，返回false，不进行处理
            return false;
        }

        /// <summary>
        /// 转换文件
        /// </summary>
        /// <param name="filePath">文件完整路径</param>
        /// <returns>True：转换成功 False：转换失败</returns>
        public abstract bool Transform(string filePath);

        #endregion
    }
}
